Arm 上的 Windows 文档 您所在的位置:网站首页 windows商店app Ide Arm 上的 Windows 文档

Arm 上的 Windows 文档

2023-09-10 08:50| 来源: 网络整理| 查看: 265

基于 ARM 的 Windows 项目 06/02/2023

Windows 传统上在由 x86/x64 处理器提供支持的计算机上运行,但最近也运行在 Arm 处理器支持的设备上。

Arm 驱动的设备特别有趣,因为 Arm 体系结构的节能特性使这些设备能够在提供更长的电池使用时间的同时提供出色的性能。 芯片上的 Arm 系统 (SoC) 通常包括其他关键功能,例如强大的 CPU、GPU、Wi-Fi & 移动数据网络,以及用于加速 AI 工作负载的神经处理器单元 (NPU) 。

生成在 Arm 上运行的 Windows 应用

Windows 10使现有的未修改 x86 应用能够在 Arm 设备上运行。 Windows 11增加了在 Arm 设备上运行未修改的 x64 Windows 应用的功能! 这种在 Arm 设备上运行 x86 & x64 应用的功能使最终用户确信,即使在支持 Arm 的新设备上,大多数现有应用 & 工具也能正常运行。

为了获得最佳性能、响应能力和电池使用时间,用户需要并需要 Arm 本机 Windows 应用,这意味着开发人员需要生成或移植 Arm 本机 Windows 应用。

Arm 开发人员工具

Microsoft 正在努力提供 Arm 原生开发人员工具集,其中包括 Arm 本机 Visual Studio 2022、VSCode、VC++ 工具链、经典.NET Framework、新式 .NET 和 Java。 Microsoft 还与多个第三方和开源社区合作,将通用工具、运行时、框架和库移植到 Arm 上的本机 Windows。 请参阅 Build 2022 中的公告 ,了解这一全面的工具、服务和设备套件,这些工具、服务和设备使开发人员能够像面向 x64 一样轻松地生成和移植原生面向 Arm 的应用。

Arm 开发人员服务

如今,许多开发人员还依赖于 虚拟机 和容器。 这就是为什么 Microsoft 的 Azure 团队最近宣布推出其新 Arm 虚拟机 服务的预览版,并很快将通过 Azure Kubernetes 服务预览 Arm 容器。

大多数开发人员还依赖于通过持续集成/持续部署 (CI/CD) (通常托管在 Azure DevOps 或 GitHub 等云服务中)的生成和测试自动化。 2022 年夏末,Microsoft 将开始移植 Azure DevOps 和 GitHub 共享的 CI/CD 自动化运行器/代理。 有关云托管的 Arm CI/CD 服务何时可用的详细信息即将发布。

Arm 开发人员设备

开发人员需要用于生成和测试 Arm 本机 Windows 应用的 Arm 设备。 Microsoft 合作伙伴已提供多个 Arm 支持的设备。 这些便携式设备,无论是笔记本电脑外形规格设备还是可转换平板电脑,都提供出色的性能和电池使用时间,并运行越来越多的 Arm 本机开发人员工具。

Windows 开发工具包 2023 (代码名称“Project Volterra”) 是最新的 Arm 设备,旨在支持 Windows 开发人员、AI 研究人员和希望将 AI 集成到其应用和体验中的开发人员。

Arm64EC - 在 Arm 上生成用于Windows 11的应用

Arm64EC (“仿真兼容”) 使你能够以增量方式生成新应用或移植现有应用,以尽可能利用本机 Arm 性能,同时利用现有 x64 代码 & 库,直到完全迁移。 了解详细信息:

使用 ARM64EC 生成适用于 ARM 设备的应用 了解 Arm64EC ABI 和汇编代码 支持 Arm 上的现有 Windows 应用

Arm 上的 Windows 运行本机 Arm 应用以及许多未修改的 x86 & x64 应用,但为了获得最佳性能和电池使用时间,应用应尽可能构建为 Arm 原生应用。 Windows 应用可以使用许多不同的工具和技术生成,包括本机 C/C++ Win32 应用、经典.NET Framework WinForms/WPF 应用、新式 .NET 或 MAUI 应用,甚至是使用 Java、Python、node 等构建的应用。

查找用于 Arm 开发的工具

Windows 提供各种工具和框架,以支持 Arm 上的应用开发。

新的 Arm 本机 Visual Studio 包括 Visual C++、.NET & .NET Framework和 Java,使开发人员能够在基于 Arm 的设备上本机生成和调试 Arm 应用。 有关详细信息,请参阅 博客公告。 Visual Studio Code原生支持 Arm,并且可以安装在 Arm 设备上。 VS Code C++ 扩展还提供 C++ IntelliSense 和生成支持,用于开发在 Arm64 设备上本机运行的 Windows 应用。 .NET 6 已支持 Arm,适用于本机 Arm 执行和 x64 仿真。 若要开发在 Arm64 设备上本机运行的 .NET 应用,建议安装新的 Arm 本机 Visual Studio 2022 17.4 和 .NET 7 Arm64 SDK。 有关 Arm 的 .NET 7 支持和 Arm64 性能改进的详细信息,请参阅 .NET 博客。 .NET 6 Arm64 SDK: 默认情况下,如果使用 dotnet run Arm64 SDK 的 .NET 6 应用,它将作为 Arm64 运行。 该工具 dotnet-runtimeinfo 可用于发现运行 .NET 的环境。 有关详细信息,请参阅 有关 Arm64 支持的 .NET 6 博客公告 。

注意

我们使用 术语 Arm 作为在 Arm64 上运行 Windows 桌面版的电脑的简写, (通常也称为 AArch64) 处理器。 此处使用 术语 Arm32 作为 32 位 Arm 体系结构的简写, (在其他文档) 中通常称为 Arm 。 由 Arm 提供支持的电脑提供出色的应用程序兼容性,并允许运行现有未修改的 x86 win32 应用程序。 Arm 应用无需任何仿真即可本机运行,而 x86 和 x64 应用在 Arm 设备上以仿真方式运行。

有关开发在 Arm 设备上运行的 Windows 应用的其他提示

建议使用 MSIX 打包应用以供分发。 有关 MSIX 如何支持 Arm 和 Arm64 的详细信息,请参阅 应用包体系结构:Arm 和 Arm64。

并非所有 Visual Studio 项目都配置为在从 Arm 设备 (F5) 开始调试时在本地启动项目。 即使你的应用在本地运行,也可能需要配置 Visual Studio 以进行远程调试。 有关详细信息,请参阅远程调试。

若要在 Visual Studio 上查找并安装建议的包,请访问 Visual Studio 下载页。

对于 Visual Studio 远程工具 2022,滚动到“所有下载”部分下方,然后展开“Visual Studio 2022 工具”下拉菜单。 Visual Studio 远程工具 2022 将在此处列出。 请务必检查 Arm64 单选按钮,然后下载。 对于Microsoft Visual C++可再发行组件,请滚动到“所有下载”部分下方,然后展开“其他工具和框架”下拉菜单。 Microsoft Visual C++ Visual Studio 2022 可再发行组件将在此处列出。 请务必检查 Arm64 单选按钮,然后下载。 如果使用较旧版本的 Visual Studio,请选择页面底部的“ 旧版下载” 链接,搜索与 Visual Studio 版本关联的下载。

当用户从 Microsoft Store 将你的应用安装在 Arm 设备上时,Windows 11将自动选择可用的应用的最佳版本。 如果将应用的 x86、Arm32 和 Arm64 版本提交到 Microsoft Store,操作系统将自动安装应用的 Arm64 版本。 如果仅提交应用的 x86 和 Arm32 版本,操作系统将安装 Arm32 版本。 如果仅提交应用的 x86 版本,操作系统将安装该版本并在仿真下运行它。

当选择应用体系结构时,请选择 32 位 x86 版本,以在 Arm 电脑上的 Windows 上运行应用的 32 位版本。 如果应用的 x64 Win32 版本不起作用,则大多数应用都将具有可用的 x86 版本。

有关体系结构的详细信息,请参阅应用包体系结构。

适用于迁移到 Arm64 的应用保证支持

在生成或更新应用程序以支持基于 Arm64 的设备时,开发人员可以利用应用保证 (FastTrack) 的一部分 - 一种应用程序兼容性计划,通过提供技术支持来帮助解决应用程序问题。 访问 aka.ms/AppAssure。

其他资源 Satya Nadella 的 Build 2022 主题演讲宣布 “Project Volterra” x86 仿真在 ARM 上的工作原理 x86 桌面应用疑难解答 ARM UWP 应用疑难解答 ARM 上的程序兼容性疑难解答 使用 WDK 生成 Arm64 驱动程序:有关生成 Arm64 驱动程序的说明。 在 Arm 上调试 x86 应用 |有关在 Arm 上调试 x86 应用的指南。 视频:构建 Arm64 Win32 C++ 应用 (Microsoft Build 2018 视频演示) 面向开发人员的 Arm 上的Windows 10 博客:对 Arm 开发Windows 10支持的原始公告 报告 bug 外部资源 Qualcomm 在 Snapdragon 上适用于 Windows 的开发人员资源 Developer.arm.com:Arm 上的 Windows Developer.arm.com:将应用程序移植到 Arm 上的 Windows Developer.arm.com:使用 WinUI 3 在 Arm 应用上生成本机 Windows Developer.arm.com:为 Arm 上的 Windows 生成库


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有